#include <iostream>
#include <ctime>
#include <fstream>

using namespace std;


void bubbleSort(int list[], int listLength) {
        while(listLength--) {
            bool swapped = false;

            for(int i = 0; i < listLength; i++) {
                if(list[i] > list[i + 1]){
                        swap(list[i], list[i + 1]);
                        swapped = true;
                }
            }
            if(swapped == false) break;
        }
}

void read_from_file(const char *filename, int a[], int length) {
    ifstream file(filename);

    for(int i=0; i < length; i++)
        file >> a[i];
}
int main()
{
    #define LEN 5000
    int a[LEN];

read_from_file("m1_sorted.txt",a,LEN);
int t_start = clock();
bubbleSort(a,LEN);
 int t_finish = clock();
 int t_work = t_finish - t_start;
cout<<"m1_sorted.txt " << t_work << " milliseconds \n";

read_from_file("m2_reverse.txt",a,LEN);
 int t_start1 = clock();
bubbleSort(a,LEN);
 int t_finish1 = clock();
 int t_work1 = t_finish1 - t_start1;
cout<<"m2_reverse.txt " << t_work1 << " milliseconds \n";

read_from_file("m3_shuffle.txt",a,LEN);
 int t_start2 = clock();
bubbleSort(a,LEN);
 int t_finish2 = clock();
 int t_work2 = t_finish2 - t_start2;
cout<<"m3_shuffle.txt " << t_work2 << " milliseconds \n";

    return 0;
}
